Use inputs and outputs possibly together with mathematical and/or logical functions to define objectives and constraints for the optimization. The objectives are used as measures of how good a certain solution (set of input values) is and to direct the search among possible solutions towards better solutions (solutions that better fulfills the objectives).
Optimization, especially in commercial simulation softwares, has for a long time been limited to the use of only a single objective. In FACTS-Analyzer however the number of objectives can be practically unlimited. One significant difference between the single-objective optimization and multi-objective optimization (MOO) is that for the latter there will typically not be just a single global optimal solution but rather a set of optimal solutions, called Pareto-optimal solutions. Having a single global optimal solution isn't completely out of the question in MOOs given that the objectives aren't conflicting, however this is seldom the case. What characterize Pareto-optimal solutions is that for any one of those solutions there is no way to improve one objective without a deterioration in at least one other objective. Among the Pareto-optimal solutions one should be selected and that can't be done without input from a decision maker. The selected solution will be the one that best matches the preferences of the decision maker.1
Solving these MOO problems with single objective optimization would require the decision maker to before hand state his/her preferences with a lot less knowledge of the problem and especially its solutions. In this sense the use of several objectives are very convenient since it enables more informed decisions to be made. However when using several objectives one needs too consider the ease of which the results from these can be interpreted and analysed. A simple two-dimensional chart can present two objectives in a good way in terms of ease of interpretation. Three objectives can be presented in a three-dimensional chart and still be quite easily interpreted above that, 4 or more objectives, are much harder to interpret.
The image below shows the Formulas tab and beneath it are descriptions of how objectives, custom outputs and input constraint are formulated. Rows are added with the button at the respective panel and removed with the button of the corresponding row. The button in the header rows will delete all rows of the corresponding table.
Settings
The settings of the Objective functions tab shown above are listed below along with a short description and possibly a link to a more detailed description about the setting.
Setting |
Description |
Objectives |
This is were all added objectives are listed with Name, Formula, and Goal. Once a new objective row have been added the objective itself must be defined by its columns: Name-column: Custom name for the objective, entered by the user. Formula-column: Contain the actual formula of the objective.
Goal-column: Contain the goal of the objective.
|
Custom Outputs |
This is used to build your own custom outputs with Name and Formula. These custom outputs are added to the list of Output Variables and can be used as any other output with the exception that they can't be used to define other custom outputs. By adding custom outputs calculated with complex expressions the overview of the optimization problem can be much better, e.g. these can divide a long objective formula into several inteligently named custom outputs and hence increase the readability (see the custom output Backlog in the example above). Once a new custom output row have been added the output itself must be defined by its columns: Name-column: Custom name for the output, entered by the user. Formula-column: Contain the actual formula of the custom output.
|
Input Constraints |
This is were all added constraints are listed with their Formula. Once a new constraint row have been added the constraint itself must be defined in the Formula-column. Formula-column: Contain the actual formula of the objective.
|
Input Variables: |
List of all input variables added to the optimization problem in the Inputs/Outputs-tab. The input variables can be used to formulate objectives, custom outputs, and input constraints by drag n' drop or by typing their name in the Formula-column of the objective, custom output or input constraint. |
Output Variables: |
List of all output variables added to the optimization problem in the Inputs/Outputs-tab. The output variables can be used to formulate objectives and and custom outputs (Note: not input constraints) by drag n' drop or by typing their name in the Formula-column of the objective or custom output. |
Functions: |
List of all functions that can be used to formulate objectives, custom outputs, and input constraints. They are added by drag n' drop or by typing their name in the Formula-field of the objective, custom output or input constraint. Details of how they are used can be found under Functions. |